Packet scheduling in a communication network with statistical multiplexing of service classes

ABSTRACT

This Generalized Processor Sharing (GPS) is the basis for the packet scheduler of choice in IP routers and ATM switches of the future. The currently accepted approach for the design of GPS schedulers is based on deterministic QoS guarantees, which, it is generally accepted, is overly conservative and leads to limitations on capacity. To address this problem we develop a framework for GPS scheduling which is based on statistical QoS guarantees and statistical multiplexing. We give the design of GPS weights which maximize the coverage of operating points, and also the design of the connection admission control (CAC). The general framework is end-to-end, with two heterogeneous QoS classes coexisting with a third, best effort class. Each QoS class has a specified delay bound together with a bound on the probability of its violation. An important objective is to maximize the bandwidth available to best effort traffic while just satisfying the guarantees of the QoS classes. To this end, we consider output regulated GPS scheduling which has the additional feature of limiting each connection&#39;s share of the bandwidth to a specified value, a design parameter which is determined by our analysis. The sources are subject to standard dual leaky bucket regulation. For the design of the GPS weights we give procedures based on two key concepts, the realizable set and the critical weights. The realizable set is the union of all admissible sets of connections of both classes over all weights. One of the main contributions is a pragmatic design process by which most of the realizable set is realized by only two critical weights. In the benign case, the system is “effectively homogeneous” and a single GPS weight suffices, while in the complementary “effectively non-homogeneous” case it is necessary to switch between the critical weights. The numerical results, which are for a single node with a wide range of traffic and QoS parameters, validate the design procedure and also show that there are substantial capacity gains from statistical multiplexing.

FIELD OF THE INVENTION

This invention relates to the field of methods for regulating traffic in a communications network. More particularly, this invention relates to generalized processor sharing (GPS) schedulers, and specifically, to GPS schedulers which statistically multiplex heterogeneous quality of service (QoS) classes.

BACKGROUND OF THE INVENTION

A communications network is one means for transmitting or carrying traffic (e.g., signals representing information such as data, voice, text, and/or video) between endpoints (e.g., host machines, fax machines, or terminals) connected to the network. The network comprises nodes connected, to each other and to the endpoints, by links. Typically, each link is bi-directional (i.e., traffic may be conveyed or transmitted in the forward and reverse directions), and each link is characterized by parameters, such as bandwidth or capacity in each direction. The nodes advantageously include buffers. If a link does not have a sufficient available bandwidth to carry traffic received at a node, a buffer in the node may be used to store the received traffic until such time as the link has a sufficient available bandwidth.

Networks are increasingly being used for the reliable, high-speed transmission of traffic between endpoints over wide areas. This increased use is bringing major changes to network services and architecture/infrastructure design. In particular, a wide spectrum of new consumer and business services, such as video-on-demand and video teleconferencing, are expected to be offered on Broadband Integrated Services Digital Networks (BISDN) as well as Internet telephony. These new services will be characterized by a wide range of traffic characteristics (e.g., bandwidth) and with different quality of service (QoS) requirements (e.g., maximum delay through the network and maximum information loss rate). The principal technique for transmission in BISDN is Asynchronous Transfer Mode (ATM). See, for example, S. E. Minzer, “Broadband ISDN and Asynchronous Transfer Mode,” IEEE Comm. Mag., pp. 17-24. September 1989. Other transmission techniques include Internet Protocol (IP), among others.

When traffic is to be carried in an ATM network, an initiating endpoint requests that a bi-directional path (i.e., a connection comprising nodes and links) be established in the network between the initiating endpoint and a specified destination endpoint. In an ATM network, the path that is established is a so-called “virtual circuit” (VC) by which it is meant that the initiating endpoint simply specifies the destination endpoint, and the network carries the traffic from the initiating endpoint to the destination endpoint as though they are connected by a direct circuit. A VC is also referred to herein as a connection. Traffic in an ATM network is formatted into cells or packets. Note that in Internet Protocol networks, no connection is defined, but packets belonging to different flows are, however, identified.

Admission control policies govern whether the network can accommodate, for example, a request to establish a new VC. The admission decision is typically based on: (1) traffic descriptors (e.g., average bandwidth and burstiness) characterizing the traffic to be carried and (2) any quality of service requirements for the traffic. The admission decision will also be based on what resources are available in the network (e.g., the amount of unused bandwidth in the links, and the unused buffer space in nodes) to accommodate the request. A request for admission typically will specify or provide the traffic descriptors. The network will, in turn (based on the specified traffic descriptors), determine the amount of network resources that will need to be assigned to the request. Based on the determination, the network will decide whether to admit the request. If the request is admitted, a “contract” is made by which the network agrees to carry the traffic and to meet any quality of service guarantees so long as the traffic stays within the specified traffic descriptors. The performance of ATM or IP networks depends on admitted connections complying with their contracts. For example, congestion may be caused by an endpoint supplying information to the network so as to exceed contract specifications, thereby causing statistical fluctuations in the traffic flow through the network. Such fluctuations can degrade network performance and affect quality of service levels for other connections in the network. Accordingly, a network typically monitors, or controls traffic on, connections to ensure that the connections comply with their contracts.

Various techniques have been proposed to monitor and control traffic on networks, as well the allocated resources. Generalized Processor Sharing (GPS) provides the basis for the packet scheduler of choice in Internet Protocol (IP) routers and ATM switches of the future. See, e.g., S. Keshav, An Engineering Approach to Computer Networking, Addison-Wesley, Reading, Mass., 1997; G. Kesidis, ATM Network Performance, Kluwer, Boston, Mass., 1996; D. Stiliadis and A. Varma, “Rate-proportional servers: A design methodology for fair queueing algorithms”, IEEE/ACM Trans. Networking 6, April 1998, pp. 164-74; and D. Stiliadis and A. Varma, “Efficient fair queueing algorithms for packet-switched networks”, IEEE/ACM Trans. Networking 6, April 1998, pp. 175-85. A GPS scheduler defines how cells are serviced out of the buffer of a connection and sent over the link with a specified total link bandwidth.

The currently accepted approach for the design of the GPS scheduler and the control of networks which use it is based on deterministic QoS guarantees. In this connection, the work and bounds of Parekh and Gallager form an important and original point of reference. See, e.g., A. K. Parekh, “A generalized processor sharing approach to flow control in integrated services network”, Ph.D. dissertation, LIDS-TH-2089, MIT, February 1992; A. K. Parekh and R. G. Gallager, “A generalized processor sharing approach to flow control—The single node case”, IEEE/ACM Trans. Networking 1, June 1993, pp. 344-57; and Parekh et al. and R. G. Gallager, “A generalized processor sharing approach to flow control in integrated services network—The multiple node case”, IEEE/ACM Trans. Networking, April 1994, pp. 137-50. However, it is generally accepted that the deterministic bounds using lossless multiplexing are overly conservative, thus limiting capacity and the utility of the approach to guide the design and operations of real networks.

SUMMARY OF THE INVENTION

To address the limitations of deterministic QoS guarantees, this invention develops a framework for GPS scheduling and network control which is based on statistical QoS guarantees and statistical multiplexing. We give the design of GPS weights which maximize coverage of operating points in the number of connections of heterogeneous QoS classes with only a very small repertoire of weights, together with the associated design of connection admission control (CAC). The gain in capacity is then typically significant.

The description and results presented here are in the framework of end-to-end QoS guarantees, but could be used in the context of any scheduling problem requiring QoS guarantees, including IP networks. We consider two heterogeneous QoS classes coexisting with a third, best effort class. These three classes are sometimes referred to in the industry as gold, silver and bronze QoS guarantees. The QoS classes have a specified end-to-end delay requirement together with a bound, typically quite small, on the probability of its violation, or loss. The role of the best effort traffic is important in our conceptual framework, and a high level objective is to maximize the bandwidth available to best effort traffic while just satisfying the guarantees of the QoS classes.

The main contributions of this invention are for a single node in which the service discipline is GPS. The procedure applies to each node on the end-to-end path, provided peak-rate regulation is carried out as described below, and provided an appropriate characterization, described below, is given of the traffic to each node.

There are K=(K₁, K₂) connections or sources of the two QoS classes, and each connection's scheduling parameters are φ_(j) and P_(o) ^((j)), for class j connections, where the weight φ_(j), in relation to the weights of the other connections, determines the connection's share of the bandwidth, which, however, is not allowed to exceed the peak rate P_(o) ^((j)). Our analysis for the single node is carried out first with peak rate regulation absent, and this analysis is then used to select P_(o) ^((.)) such that the analysis still holds when peak rate regulation is operative. The QoS parameters for class j are D_(j), the delay bound, and L_(j), the loss probability. The class dependence is important, for in one representative example, class 1 is voice-like for which D₁ is small and L₁ large, while class 2 is premium data-like for which D₂ is large and L₂ small.

The source model is the fluid rate process which is adversarial while compliant with dual leaky bucket (r,B_(T),P) regulation, where r and P are the mean and peak rate constraints, respectively, and B_(T) is the token buffer size. This is an on-off process, which we call the extremal regulated source process, that transmits at peak rate from the instant that the token buffer is full till it is empty, and then turns off and remains so till the token buffer is full.

The development of the single node analysis is in two phases, lossless multiplexing followed by statistical multiplexing. The former assumes that sources may collude and in this case the above on-off process is shown to be maximally adversarial. This phase parallels the standard analysis for deterministic guarantees, except for the additional element of the delay constraint. The analysis in the latter phase combines (i) the assumption of non-colluding sources, which gives statistical independence to the sources and uniformly distributed random phases to the individual sources' rate processes, and (ii) the use of the unutilized portions of the allocated resources to sources, which is not exploited in lossless multiplexing.

The GPS weights (φ₁, φ₂) or, more specifically, the ratio φφ₁/φ₂ (which we shall also refer to as a weight) are chosen as follows. The first step is to determine the admissible set (φ), i.e., for fixed φ, the set of all (K₁, K₂) such that the statistical QoS of each connection is satisfied. The size and shape of the admissible region depends strongly on the weight. It is easy to mismatch the GPS weight to the traffic and QoS parameters of the classes. For instance, if φ is excessively large then the admissible set is limited by the QoS considerations of the class 2 connections and is consequently small in size, with the relatively few class 1 connections receiving QoS in excess of their requirements. When the weight is not properly designed resources are misallocated and sharing is inhibited.

An important concept for GPS design is the realizable set . This is the set of all (K₁, K₂) which are contained in the admissible set of some weight φ. That is, the realizable set is the union of the admissible set (φ) over all φ. The role of the realizable set is as follows: say exogeneous (traffic and market) conditions dictate a desirable operating neighborhood in connections around the point (K₁, K₂). If this neighborhood is contained in then an inverse problem is solved to obtain the appropriate weight. As the exogeneous conditions change, typically on a slow time scale, the GPS weight changes too in correspondence. Now, on the face of it, this notion is only of theoretical value with possibly little practical relevance, since the realization of all of may in principle require switching between a large, even possibly an uncountable, number of weights. One of the main contributions of this invention is to show by a pragmatic design approach that most of may be realized by either one or two weights. These are called critical weights, φ_(c) ⁽¹⁾ and φ_(c) ⁽²⁾, and simple procedures for their calculations are given in this disclosure.

Next, we must determine whether one or two critical weights are needed. We classify the entire system, as characterized by the traffic and QoS parameters of both classes, to be either “Effectively Homogeneous” or “Effectively Non-Homogeneous”, depending upon whether φ_(c) ⁽¹⁾≦φ_(c) ⁽²⁾ or otherwise. The former is the benign case and the mid-point between the critical weights is a suitable choice to realize almost all of . In the latter case, realizing requires switching between the critical weights, which, as argued above, would occur on a slow time scale to track exogeneous traffic conditions. In particular, switching at this rate would be compatible with the tacit assumption in the analysis that steady state exists. In our numerical investigations we have encountered examples of effectively homogeneous systems in which there exists considerable disparity in traffic and QoS parameters between the classes.

Our numerical investigations consider a wide range of traffic and QoS parameters. The results reported here for the single node provide support for our pragmatic approach to the design problem, which is based on piece-wise linear approximations to the boundaries of the admissible and realizable regions, and, more specifically, for our claim that either one or two weights suffice to realize most of . Finally, these results show that there are substantial capacity gains from statistical over deterministic, or lossless, QoS guarantees.

Proceeding to the network-wide context, the objective is to maximize carried best-effort traffic, while meeting the requirements of the QoS classes. This is the prime motivation for regulation of the peak rate of the output of the GPS schedulers. Output regulated GPS has the effect of allocating resources to the admitted QoS connections to just meet their requirements. There are further choices to be made regarding the delay budget, i.e., allocation of portions of the end-to-end delay to nodes in the path of the connection. An attractive option is to allocate the entire delay budget to the first node in the path. In the GPS framework one attraction, among others, of this invention is that the complexity of the GPS design is contained and the detailed analysis given here applies. Otherwise there is a proliferation of classes for which the GPS design problem is complexified, even though the basic framework of a single GPS node analysis of this invention remains intact.

BRIEF DESCRIPTION OF THE DRAWINGS

The features and advantages of the present invention will become more readily apparent from the following detailed description of the invention in which:

FIG. 1 is a functional diagram of GPS scheduling at a node;

FIG. 2 shows a single source or a single connection system;

FIGS. 3(a)-(b) show the bound on buffer content during a busy period;

FIG. 4 shows the effective bandwidth e_(o) and the corresponding buffer b_(o) for lossless multiplexing;

FIGS. 5(a)-(h) show the influence of the weight φ on the admissible regions; (c)-(e) refer to the effectively homogeneous case and (f)-(h) refer to the effectively non-homogeneous case;

FIG. 6 shows the region _(NH) in the effectively non-homogeneous case;

FIG. 7 shows the admissible region corresponding to the critical weights for the two classes of connections and the realizable region for Case 1;

FIG. 8 shows the admissible region corresponding to the critical weights for the two classes of connections and the realizable regions for lossless and statistical multiplexing for Case 2; and

FIG. 9 shows the admissible region corresponding to the critical weights for the two classes of connections and the realizable regions for lossless and statistical multiplexing for Case 3.

DETAILED DESCRIPTION OF THE INVENTION

The following detailed description of the inventive method is divided into the following sections. Section 1 outlines the preliminaries and the background facts. Section 2 discusses lossless multiplexing with deterministic guarantees, and Section 3 describes the single node analysis of statistical multiplexing and GPS design. Section 4 presents numerical investigations, and Section 5 discusses end-to-end design and performance. The conclusions are presented in Section 6.

1. Preliminaries and Background Facts

1.1 Flows, Rates, Dual Leaky Bucket Regulator

Here we review some basic quantities and operations of the dual leaky bucket regulator (r, B_(T), P), where r is the token (mean) rate, B_(T) is the token buffer size and P is the peak rate. Traffic streams are modeled as fluid flow here and throughout this disclosure. Let U(t) and R(t) be rate processes, where U(t) is offered by the source and R(t) is the conforming process which is passed to the network by the regulator. We let A_(U)(t, t+τ) and A_(R)(t, t+τ) denote the total flows during the interval [t, t+τ] for the U and R rate processes, respectively, where rates and total flows are generally related thus: $\begin{matrix} {{A_{R}\left( {t,{t + \tau}} \right)} = {\int_{t}^{t - \tau}{{R(s)}\quad {s}}}} & (1.1) \end{matrix}$

The basic relation describing the conforming process R(t) is

A _(R)(t, t+τ)=min(A _(U)(t, t+τ), P _(τ) , z(t)+rτ)∀t, ∀τ>0  (1.2)

In Eq. (1.2), z(t) is the token content of the token buffer at time t. The governing equations of z(t) are $\begin{matrix} \left. \begin{matrix} {\frac{}{t}{z(t)}} & {{= {r - {R(t)}}},} & {{{if}\quad 0} < {z(t)} < B_{T}} \\ \quad & {{= \left\lbrack {r - {R(t)}} \right\rbrack^{+}},} & {{{if}\quad {z(t)}} = 0} \\ \quad & {{= \left\lbrack {r - {R(t)}} \right\rbrack^{-}},} & {{{if}\quad {z(t)}} = B_{T}} \end{matrix} \right\} & (1.3) \end{matrix}$

It may be verified that the regulated rate process R(t) is constrained thus, $\begin{matrix} \begin{matrix} {{R(t)} = {\min \quad \left( {{U(t)},P} \right)}} & {{{if}\quad {z(t)}} > 0} \\ {= {\min \quad \left( {{U(t)},P} \right)}} & {{{if}\quad {z(t)}} = 0} \end{matrix} & (1.4) \end{matrix}$

We will find it convenient to equivalently characterize the dual leaky bucket regulator by the three-tuple, (r, Q, P), where Q is the maximum burst size and is given by QPB_(T)/(P−r).

1.2 Generalized Processor Sharing with Output Regulation

FIG. 1 shows a functional diagram of a generalized processing sharing (GPS) scheduler. The traffic of each connection 100 is dual leaky bucket regulated prior to arrival at the GPS node. In the GPS node, each connection is provided a buffer 110 whose output is subject to peak rate regulation. There are two QoS classes of connections 120 sharing bandwidth C. (This is the total link bandwidth minus the bandwidth allocated to the best effort traffic.) Each connection of class j (j=1,2) has two parameters: φ_(j) and P_(o) ^((j)), which are used to schedule service to the connection. The weight φ_(j), in relation to the weights associated with the other connections, determines the connection's share of the bandwidth, which, however, is not allowed to exceed P_(o) ^((j)). Thus the output rate from the connection buffer (see FIG. 1) does not exceed P_(o) ^((j)). In our work, the buffer sizes, {φ_(j)} and {P_(o) ^((j))} are design parameters to be determined in this invention. The best effort traffic, which is not shown in the FIG. 1, is allocated fixed bandwidth for its exclusive use and is allowed access to the bandwidth unused by the QoS connections. Hence, the QoS classes are oblivious to the best effort traffic. Section 5 deals with issues related to best effort traffic.

The GPS scheduler 130 is work conserving, and in conjunction with the output peak rate regulation, the bandwidth to a connection of class j is at least $\min {\quad {\left( {P_{o}^{(j)},\frac{\varphi_{j}C}{{\varphi_{1}{\sum\limits_{i = 1}^{K1}\quad \xi_{i}^{(1)}}} + {\varphi_{2}{\sum\limits_{i = 1}^{K2}\quad \xi_{i}^{(2)}}}}} \right){\quad \quad}\left( {{j = 1},2} \right)}}$

where ξ_(i) ^((j)) is an indicator variable for the i th connection of class j, which is 1 if the connection requires bandwidth, and 0 otherwise.

1.3 Chernoff Approximation

The Chernoff large deviations approximation (see, P. Billingsley, Probability and Measure, 2nd ed. (Wiley, New York) 1986; N. R. Chaganty and J. Sethuraman, “Strong large deviation and local limit theorems”, Ann. Prob. 21:(3), 1993, pp. 1671-90; V. V. Petrov, “On the probabilities of large deviations for sums of independent random variables”, Theory Probab. Applicat. 10, 1965, pp. 287-98) is an effective technique for estimating loss in bufferless multiplexing systems. The procedure given here is based on J. Y. Hui, “Resource allocation for broadband networks”, IEEE J. Select. Areas Commun. 6, 1988, pp. 1598-1608; and F. P. Kelly, “Effective bandwidths at multi-type queues”, Queueing Systems 9, 1991, pp. 5-15. Consider

P _(loss) =Pr(U>C)  (1.5)

where the total instantaneous demand ${U = {\sum\limits_{j = 1}^{J}\quad {\sum\limits_{k = 1}^{K_{j}}\quad u_{jk}}}},$

and {u_(jk)} are independent random variables and {u_(jk)}_(k) are nonnegative identically distributed for each j. Here there are J source classes and K_(j) sources of class j. When C is the nodal bandwidth, P_(loss) is the fraction of time that losses occur. Other performance measures related to P_(loss) are discussed in Performance Evaluation and Design of Multiservice Networks, ed. J. W. Roberts, Commission of the European Communities, Final Rep. COST 224 project, 1992.

Assume that the instantaneous loads u_(jk) have moment generating functions

M _(j)(s)=E[e ^(su) ^(_(jk)) ](j=1, 2, . . . , J)  (1.6)

Also assume the stability condition ${\sum\limits_{j}\quad {K_{j}{E\left( u_{jk} \right)}}} < C$

and that ${{\lim\limits_{s\rightarrow\infty}{\sum\limits_{j}\quad {K_{j}{{M_{j}^{\prime}(s)}/{M_{j}(s)}}}}} > C},$

as otherwise there is no loss. Then the Chernoff bound augmented by a lower order refinement (see, V. V. Petrov, “On the probabilities of large deviations for sums of independent random variables”, Theory Probab. Applicat. 10, 1965, pp. 287-98) gives the following approximation for the scaling K_(j)=γ_(j)C, where γ_(j)=O(1) and C→∞.

Fact 1 $\begin{matrix} {P_{loss} = {\frac{\exp \quad \left\{ {- {F\left( s^{*} \right)}} \right\}}{s^{*}\sigma \quad \left( s^{*} \right)\sqrt{2\quad \pi}}\left\lbrack {1 + {o(1)}} \right\rbrack}} & (1.7) \end{matrix}$

where ${{F(s)} = {{sC} - {\sum\limits_{j}\quad {K_{j}\log \quad {M_{j}(s)}}}}},{{F\left( s^{*} \right)} = {\sup\limits_{s \geq 0}{F(s)}}},$

and σ²(s)=∂² log E(e^(sU))/∂s²

Later in this disclosure we will encounter the case where u_(jk) are independent on-off random variables which take values 0 and 1 and E(u_(jk))=w^((j)), i.e.,

P _(r)(u _(jk)=1)=1−Pr(u _(jk)=0)=w ^((j))  (1.8)

Assume that ΣK_(j)w^((j))<C and ΣK_(j)>C.

Fact 2

The Chernoff approximation for P_(loss) with multiple class is $\begin{matrix} {\left. P_{loss}^{*} \right.\sim\frac{e^{- {F{(s^{*})}}}}{s^{*}\sigma \quad \left( s^{*} \right)\sqrt{2\quad \pi}}} & (1.9) \end{matrix}$

where s* is the unique positive real solution to the equation $\begin{matrix} {{e^{s}{\sum\limits_{j}\quad \frac{K_{j}w^{(j)}}{1 - w^{(j)} + {w^{(j)}e^{s}}}}} = C} & (1.10) \\ {{F(s)} = {{sC} - {\sum\limits_{j}\quad {K_{j}\log \quad \left\{ {1 - w^{(j)} + {w^{(j)}e^{s}}} \right\} \quad {and}}}}} & (1.11) \\ {{\sigma^{2}(s)} = {e^{s}{\sum\limits_{j}\quad \frac{K_{j}{w^{(j)}\left( {1 - w^{(j)}} \right)}}{\left\{ {1 - w^{(j)} + {w^{(j)}e^{s}}} \right\}^{2}}}}} & (1.12) \end{matrix}$

Of considerable interest is the following explicit form of the Chernoff asymptotic approximation for the further specialization to a single source class. Here we drop the class index j.

Fact 3 $\begin{matrix} {{P_{loss} = \frac{e^{- {F{(s^{*})}}}}{s^{*}\sigma \quad \left( s^{*} \right)\sqrt{2\quad \pi}}}{{a = \frac{C}{K}},{s^{*} = {\log \quad\left\lbrack {\frac{a}{1 - a} \cdot \frac{1 - w}{w}} \right\rbrack}}}} & (1.13) \end{matrix}$

where $\begin{matrix} {{F\left( s^{*} \right)} = {K\left\lbrack {{a\quad \log \quad \left( \frac{a}{w} \right)} + {\left( {1 - a} \right)\quad \log \quad \left( \frac{1 - a}{1 - w} \right)}} \right\rbrack}} & (1.14) \end{matrix}$

and

σ²(s)=Kw(1−w)e ^(s)/{1−w+we ^(s)}²  (1.15)

The numerical results that we report in this invention use the expressions in Facts 2 and 3.

Although we have no specific need for the result, note the results in the multi-class framework concerning distributions of independent random variables which maximize the Chernoff approximation P_(loss)˜exp(−F(s*)). See, D. Mitra and J. A. Morrison, “Multiple time scale regulation and worst case processes for ATM network control”, in Proc. 34^(th) Conf. on Decision and Control, 1995, pp. 353-58. Assume that the random variables u_(jk) are subject to the peak constraint of e_(o) ^((j)) and their mean is bounded by r^((j)). The result states that the exponential Chernoff approximation is maximized by on-off random variables which take values 0 and e_(o) ^((j)), and have mean r^((j)).

2. Lossless Multiplexing

In this section, we consider the case in which there is a single node and the QoS guarantee is deterministic, i.e., no loss, or violation, is permitted of the delay requirement. The delay bound may depend on the class of the connection. The treatment in the next section on statistical multiplexing expands on the base built here, and the numerical results presented later compare the capacities obtained from lossless and statistical multiplexing. Peak rate regulation of the output of each connection's buffer is ignored in the analysis of this section. The results will determine the value of the peak rate.

2.1 Single Source System

We begin by considering a single regulated traffic stream R(t) 200 which feeds a buffer of unlimited capacity and a buffer 210 is serviced by a trunk of capacity, i.e., bandwidth, c(c>r). See FIG. 2 and recall Section 1.1.

The content of the system buffer is denoted by ν(t). The main goal of this subsection is to derive a simple expression for the maximum of the system buffer content. For our purposes here, the regulated stream R(t) is such that the total flow in any interval [t, t+τ],A_(R)(t, t+τ), is bounded, and thus $\begin{matrix} {{{A_{R}\left( {t,{t + \tau}} \right)} \leq {\min \quad \left( {{P\quad \tau},{{z(t)} + {r\quad \tau}}} \right)\quad {\forall t}}},{\forall{\tau > 0}}} & (2.1) \end{matrix}$

The “min” operation in Eq. (2.1) is performed by the “join” in the schematic of FIG. 2.

Propostion 1

For all t $\begin{matrix} {{{v(t)} \leq \frac{\left( {P - c} \right)B_{T}}{\left( {P - r} \right)}}\overset{\Delta}{=}b} & (2.2) \end{matrix}$

Proof: Clearly the maximum of ν(t) occurs during a busy period of the buffer. Let t_(o) correspond to the onset of a busy period, i.e., ν(t_(o))=0 and ν(t_(o)+)>0. As FIG. 3 shows, in the busy period the total flow into the buffer during the interval [t_(o), t₀+τ] is, from Eq. (2.1), bounded by $\begin{matrix} \left\{ \begin{matrix} {P\quad \tau} & {{0 \leq \tau \leq {{z\left( t_{o} \right)}/\left( {P - r} \right)}}} \\ {{z\left( t_{o} \right)} + {r\quad \tau}} & {{{z\left( t_{o} \right)}/\left( {P - r} \right)} \leq \tau} \end{matrix} \right. & (2.3) \end{matrix}$

On the other hand, since by assumption the interval [t₀, t₀+τ] is contained in the busy period, the total flow out of the buffer is at least cτ. The difference {overscore (ν)} (τ) is a bound on the buffer content during the buffer's busy period. Hence, for τ≧0, ${\overset{\_}{v}(\tau)} \leq \frac{\left( {P - c} \right){z\left( t_{o} \right)}}{\left( {P - r} \right)} \leq \frac{\left( {P - c} \right)B_{T}}{\left( {P - r} \right)}$

which completes the proof.

The result in Eq. (2.2) is tight, i.e., the bound is realized by the extremal regulated source process, which we now specify. This rate process turns on when the token buffer is full and transmits at peak rate P, it turns off when the token buffer first becomes empty, and resumes the cycle at the instant the token buffer again becomes full. We denote this extremal process by R_(Ω)(t) $\begin{matrix} {{R_{\Omega}(t)}\quad \begin{matrix} {= P} & {0 \leq t \leq T_{on}} \\ {= 0} & {T_{on} < t \leq {T_{on} + T_{off}}} \end{matrix}} & (2.4) \end{matrix}$

where T_(on)<B_(T)/(P−r) and T_(off)=B_(T)/τ. Also let T=T_(on)+T_(off) and the source activity factor ω_(Ω)=r/P.

As indicated in Eq. (2.4), the bound on the buffer content is given by b, which may be viewed as a function of the bandwidth variable c, i.e., b=b(c). Note from FIG. 3 that the buffer is non-empty for an interval which is bounded by D_(on), where

D _(on) T _(on) +b/c  (2.5)

Similarly, the bandwidth c, when viewed as a resource, is utilized during the same period that the buffer is non-empty. When the input is the extremal regulated source process R_(Ω)(t), this period is followed by a period of length D_(off) during which the buffer and bandwidth is not utilized, where

D _(off) =T _(off) −b/c  (2.6)

Hence, for this input process the fraction of time that the buffer and bandwidth is utilized is $\begin{matrix} {\omega = {\frac{D_{on}}{D_{on} + D_{off}} = {\omega_{\Omega} + {\frac{b}{c} \cdot \frac{1}{T}}}}} & (2.7) \end{matrix}$

2.2 Multiplexing and GPS Design

We consider lossless multiplexing in the GPS system, the design of weights (φ₁, φ₂) and its impact on the admissible and realizable sets. The QoS requirements are that (i) there are no losses, and (ii) the maximum delay is bounded by D_(j) for class j (j=1,2). We will lead to the specification of the realizable set _(o), which is the set of sources K=(K₁,K₂) for which there exists weights such that the QoS requirements are satisfied.

We have seen that, for the single source system, when the bandwidth allocated is c, the buffer content is at most b(c), see Eq. (2.2). Hence the delay is at most b/c and consequently the QoS requirement that the delay be at most D is satisfied if

b/c≦D  (3.8)

As indicated in FIG. 4, the smallest value of the bandwidth c which satisfies Eq. (2.2) and Eq. (2.8) is e_(o), and the corresponding buffer size for which no losses occur is b_(o). We tacitly assume that D≦B_(T)/r, since otherwise the selection (e_(o),b_(o))=(r,B_(T)) suffices. Hence $\begin{matrix} {e_{0} = \frac{P}{1 + {D/T_{on}}}} & (2.9) \end{matrix}$

We call e_(o) the effective bandwidth for lossless multiplexing (the subscript 0 is a mnemonic for zero loss).

Proceeding to the design of GPS weights, we begin by tagging a source of class 1, say source 1, and we assume that it is active, i.e., its bandwidth is utilized. Hence, the tagged source will satisfy its QoS requirements if it receives bandwidth e_(o) ⁽¹⁾, the effective bandwidth of lossless multiplexing for class 1 sources. The fair share of the tagged source is at least $\begin{matrix} \frac{\varphi_{1}C}{\varphi_{1} + {\varphi_{1}{\sum\limits_{i = 1}^{K_{1} - 1}\quad \xi_{i}^{(1)}}} + {\varphi_{2}{\sum\limits_{i = 1}^{K_{2}}\quad \xi_{i}^{(2)}}}} & (2.10) \end{matrix}$

Here K_(j) is the number of sources of class j and ξ_(i) ^((j)) is an indicator variable for source i of class j that takes value 1 if the source is active and 0 otherwise. Hence the bandwidth demand of the active tagged source is satisfied if $\begin{matrix} {{e_{0}^{(1)} \leq \frac{\varphi_{1}C}{\varphi_{1} + {\varphi_{1}{\sum\limits_{i = 1}^{K_{1} - 1}\quad \xi_{1}^{(1)}}} + {\varphi_{2}{\sum\limits_{i = 1}^{K_{2}}\quad \xi_{1}^{(2)}}}}}{{i.e.},}} & (2.11) \\ {{{\varphi_{1}{\sum\limits_{i = 1}^{K_{1} - 1}\xi_{i}^{(1)}}} + {\varphi_{2}{\sum\limits_{i = 1}^{K_{2}}\xi_{i}^{(2)}}}} \leq {\varphi_{1}\left( {\frac{c}{e_{0}^{(1)}} - 1} \right)}} & (2.12) \end{matrix}$

By an analogous argument for a tagged active source of class 2, $\begin{matrix} {{{\varphi_{1}{\sum\limits_{i = 1}^{K_{1}}\xi_{i}^{(1)}}} + {\varphi_{2}{\sum\limits_{i = 1}^{K_{2} - 1}\xi_{i}^{(2)}}}} \leq {\varphi_{2}\left( {\frac{c}{e_{0}^{(2)}} - 1} \right)}} & (2.13) \end{matrix}$

Both of the above conditions have to hold for QoS to be satisfied.

We return to these two conditions in the next section when we consider statistical multiplexing. Here, where the topic is lossless multiplexing, we consider the rare but still possible case where the bursts of all sources are coincident, i.e., active at a common point in time. In this worst-case scenario ξ_(i) ^((j))=1 for all j and i in Eq. (2.12) and Eq.(2.13). This gives $\begin{matrix} {{{K_{1}\varphi_{1}} + {K_{2}\varphi_{2}}} \leq {C\left\lbrack {\min \quad \left( {\frac{\varphi_{1}}{e_{0}^{(1)}},\frac{\varphi_{2}}{e_{0}^{(2)}}} \right)} \right\rbrack}} & (2.14) \end{matrix}$

The selection of weights

φ₁ =e _(o) ⁽¹⁾, φ₂ =e _(o) ⁽²⁾  (2.15)

realizes the following admissible set of sources K,

K ₁ e _(o) ⁽¹⁾ +K ₂ e _(o) ⁽²⁾ ≦C  (2.16)

which we denote by _(o). It is easy to verify that this set cannot be improved upon. Hence the realizable set _(o) coincides with admissible set _(o) obtained from the weights in Eq. (2.15), a fortuitous fact.

Recall that the above derivation has relied on sufficiency for satisfying QoS, as in Eq. (2.10) and Eq. (2.11). Thus the possibility exists that the realizable set may be larger than _(o) for certain, benign sources. Now recall that to satisfy QoS, the extremal regulated source process defined in Section 2.1 has a bandwidth demand process which is on-off and takes value e_(o) ^((j)), j=1,2, while on. For this process the admissible set in Eq. (2.16) is maximal, as is easy to verify, and in this sense the characterization of the realizable set in Eq. (2.16) is tight for lossless multiplexing.

Note from Eq. (2.15) and Eq. (2.16) that the bandwidth allocation to class j sources is e_(o) ^((j)), which is typically greater than the usual allocation of the mean rate r^((j)). This, of course, is because of the delay requirement in the QoS specifications, which is not usually considered.

Now if we consider reinstatement of peak rate regulation of the output of each connection's buffer, a natural choice for the peak rate is e_(o) ^((j)), for class j connections, since it is the smallest value which will not modify the above analysis and the QoS.

3. Statistical Multiplexing and GPS Design: Single Node Analysis

Here we adopt the statistical point of view and allow small probabilities that the delay requirements are not satisfied. We call these the loss probabilities. This terminology, besides being ingrained, also reflects the scenario where buffers are sized in conjunction with bandwidth allocations, and insufficient bandwidth availability is responsible for both buffer overflow and violation of the delay requirement. The QoS specifications for class j are D_(j) and L_(j), where D_(j) is, as before, the delay bound and L_(j) is the loss probability. In the statistical multiplexing framework the design of GPS weights, while obviously complex, has the simple goal of allocating resources to just match the resources required to satisfy QoS requirements. A final overriding concern is that the design relies on only a very small set of weights, since frequent switching of weights is not feasible in operations and also leads to violations of the tacit assumption in the analysis that steady state exists.

It will become apparent that the analysis of this section applies to output regulated GPS provided only that the peak rate of the output of each connection's buffer is not less than e_(o) ^((j)), for class j connections. Our design ensures this, and as a consequence output regulation is transparent to the analysis and hence it is ignored in this section.

3.1 Statistical QoS

We consider the extremal regulated source process, for which it was shown in Section 2 that the bandwidth demand to satisfy QoS is an on-off process taking values e_(o) ^((j)) and 0. Denote this process by u_(ji)(t) for source i of class j. From the assumption of statistical independence of sources

u _(ji)(t)=u _(j)(t+θ _(ji))  (3.1)

where u_(ji)(t) is a fixed, periodic on-off function with period T_(j), which takes values e_(o) ^((j)) and 0 for fractions ω^((j)) and (1−ω^((j))), respectively (see Eq. 2.7), where ω^((j))=r^((j))/e_(o) ^((j)); the phases θ_(ji) are independent random variables uniformly distributed over the interval T_(j).

As a consequence of the above model the activity indicators ξ_(i) ^((j)) are independent, binomial random variables,

Pr(ξ_(i) ^((j))=1)=1−Pr(ξ_(i) ^((j))=0)=ω_(i) ^((j))  (3.2)

We return to the QoS requirements in Eq. (2.12) and Eq. (2.13) and obtain their statistical counterparts: $\begin{matrix} {{\Pr \left\lbrack {{\varphi_{1}{\sum\limits_{i = 1}^{K_{1} - 1}\xi_{i}^{(1)}}} + {\varphi_{2}{\sum\limits_{i = 1}^{K_{2}}\xi_{i}^{(2)}}}} \right\rbrack} > {\varphi_{1}\left( {{C/e_{0}^{(1)}} - 1} \right)} \leq L_{1}} & (3.3) \\ {{\Pr \left\lbrack {{\varphi_{1}{\sum\limits_{i = 1}^{K_{1}}\xi_{i}^{(1)}}} + {\varphi_{2}{\sum\limits_{i = 1}^{K_{2} - 1}\xi_{i}^{(2)}}}} \right\rbrack} > {\varphi_{2}\left( {{C/e_{0}^{(2)}} - 1} \right)} \leq L_{2}} & (3.4) \end{matrix}$

Here L₁ and L₂ are small QoS parameters. In Eq. (3.3), which is concerned with QoS for class 1, it is assumed that K₁≧1. Similarly, Eq. (3.4) is concerned with QoS for class 2 and hence K₂≧1. Importantly, both conditions have to be simultaneously satisfied. Also note that the approach leading to Eq. (3.3) and Eq. (3.4) is based on the assumption made in Eq. (2.12) and Eq. (2.13) that the tagged source is active. There are alternative measures which may be readily incorporated, for instance where the probabilistic behavior of the tagged source's activity is included. We do not expect such a modification to make a significant difference to the admissible regions.

3.2 Maximum Admissible Sources, or Corner Points

Let {overscore (K)}₁ ⁽¹⁾ and {overscore (K)}₂ ⁽²⁾ be called “pinned corner points” for class 1 and 2, respectively, where {overscore (K)}_(j) ^((j)) is the maximum number of sources of class j such that QoS of class j is satisfied when there are no sources of the complementary class. That is, from Eq. (4.3), $\begin{matrix} {{\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{1}^{(1)} - 1}\xi_{i}^{(1)}} > \left( {{C/e_{0}^{(1)}} - 1} \right)} \right\rbrack} \leq L_{1} < {\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{1}^{(1)}}\xi_{1}^{(1)}} > \left( {{C/e_{0}^{(1)}} - 1} \right)} \right\rbrack}} & (3.5) \end{matrix}$

We adopt the following notation to abbreviate Eq. (3.5): $\begin{matrix} {{\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{1}^{(1)} - 1}\xi_{i}^{(1)}} > \left( {{C/e_{0}^{(1)}} - 1} \right)} \right\rbrack} \lesssim L_{1}} & (3.6) \end{matrix}$

Similarly, from Eq. (3.4), $\begin{matrix} {{\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{2}^{(2)} - 1}\xi_{i}^{(1)}} > \left( {{C/e_{0}^{(2)}} - 1} \right)} \right\rbrack} \lesssim L_{2}} & (3.7) \end{matrix}$

The reason we call these corner points pinned is because they do not depend on the design variables φ₁ and φ₂.

Obviously the design only depends on the ratio of weights, which we denote by φφ₁/φ₂. Let {overscore (K)}₂ ⁽¹⁾(φ) and {overscore (K)}₁ ⁽²⁾(φ) be “design corner points” for class 1 and 2, respectively, where {overscore (K)}_(i) ^((j))(φ) is the maximum number of class i sources such that, for fixed φ, with a single class j (j≠i) source, i.e. K_(j)=1, this source, while active, receives resources to satisfy its QoS. Hence, from Eq. (3.3), $\begin{matrix} {{\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{2}^{(1)}{(\varphi)}}\xi_{i}^{(2)}} > {\varphi \left( {{C/e_{0}^{(1)}} - 1} \right)}} \right\rbrack} \lesssim L_{1}} & (3.8) \end{matrix}$

and, from Eq. (4-4), $\begin{matrix} {{\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{1}^{(2)}{(\varphi)}}\xi_{i}^{(1)}} > {\frac{1}{\varphi}\left( {{C/e_{0}^{(2)}} - 1} \right)}} \right\rbrack} \lesssim L_{2}} & (3.9) \end{matrix}$

Note that the expressions to the left of Eqs. (3.6)-(3.9) are basically simple since only single classes are involved and they may be evaluated most rapidly and conveniently by using the single class Chernoff approximation in Fact 3, Section 1.3. Note too that in our notational system for the corner points the superscript refers to the class whose QoS is under consideration, and the subscript refers to the class for which we seek the maximum number of sources.

The following monotonicity and range properties of {overscore (K)}₂ ⁽¹⁾(φ) and {overscore (K)}₁ ⁽²⁾(φ), while self-evident from Eq. (3.8) and (3.9), are of crucial importance. As φ ranges from small to large values, {overscore (K)}₂ ⁽¹⁾(φ) is monotonic, non-decreasing and {overscore (K)}₁ ⁽²⁾(φ) is monotonic, non-increasing. Also, from Eq. (3.8) as φ→∞, {overscore (K)}₂ ⁽¹⁾(φ)→∞ and as φ→0, {overscore (K)}₂ ⁽¹⁾(φ)→0. Similarly, from Eq. (3.9), {overscore (K)}₁ ⁽²⁾(φ) can be made as large and as small by making φ sufficiently small and large, respectively. In summary, we have for the design corner points.

Proposition 2

(i) {overscore (K)}₂ ⁽¹⁾(φ) is monotonic, non-decreasing in φ with range [0, ∞].

(ii) {overscore (K)}₁ ⁽²⁾(φ) is monotonic, non-increasing in φ with range [0, ∞].

The above behavior appears at first to be counter-intuitive. On further reflection it is understandable that as φ increases, {overscore (K)}₂ ⁽¹⁾(φ) also increases, since increasing φ, while reducing the relative weight of each class 2 source, does increase the priority and isolation accorded to the single class 1 source, and hence an increased number of class 2 sources is consistent with preservation of QoS of the single class 1 source. When φ is small and decreasing, the number of class 2 sources needs to be increasingly constrained to prevent bandwidth starvation for the single class 1 source, hence {overscore (K)}₂ ⁽¹⁾(φ) approaches 0.

3.3 Critical Weights

We introduce two special values of the weight φ, φ_(c) ⁽¹⁾ and φ_(c) ⁽²⁾ which we call critical weights, that will play important roles in the subsequent development. The critical weight φ_(c) ^((j)) is that value of φ for which the QoS of a single active class j source is satisfied when the number of sources of the complementary class j_(c) is {overscore (K)}_(jc) ^((jc)), and there is only one source of class j. For example, φ_(c) ⁽¹⁾ is obtained from the condition

{overscore (K)} ₂ ⁽¹⁾(φ_(c) ⁽¹⁾)={overscore (K)} ₂ ⁽²⁾  (3.10)

where it is assumed that has been obtained previously. Equivalently φ_(c) ⁽¹⁾ may be obtained from Eq. (3.8) thus, $\begin{matrix} {{\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{2}^{(2)}}\xi_{i}^{(2)}} > {\varphi_{c}^{(1)}\left( {{C/e_{0}^{(1)}} - 1} \right)}} \right\rbrack} \lesssim L_{1}} & (3.11) \end{matrix}$

In general, the defining relation for φ_(c) ^((j)) is

{overscore (K)} _(jc) ^((j))(φ_(c) ^((j)))={overscore (K)} _(jc) ^((jc))  (j=1,2)  (3.12)

Using the Chernoff approximation for a single class given in Fact 3, Section 1.3, it is straightforward to calculate the critical weights from Eq. (3.11).

The existence of the critical weights follows from Proposition 2. In the case of φ_(c) ⁽¹⁾, for instance, we know from Eq. (3.8) and Proposition 2 that as φ is increased from a small value, {overscore (K)}₂ ⁽¹⁾(φ) crosses the given level {overscore (K)}₂ ⁽²⁾ from below and the value of φ at the crossing is φ_(c) ⁽¹⁾.

Note from the monotonicity properties in Proposition 2 that, if φ≧φ_(c) ⁽¹⁾ then {overscore (K)}₂ ⁽¹⁾≧{overscore (K)}₂ ⁽²⁾ and for φ sufficiently large the latter inequality is strict. Similarly, if φ≧φ_(c) ⁽²⁾ then {overscore (K)}₁ ⁽²⁾(φ)≦{overscore (K)}₁ ⁽¹⁾ and for φ sufficiently small the latter inequality is strict.

3.4 Admissible and Realizable Sets

These important sets highlight the role of the weights. Let ^((j)) _((φ)) denote the set of sources K which are admissible from the perspective of QoS for class j sources for given φ. That is, ( 1 )  ( φ ) ·  = Δ  { K : ( 3.3 ) , i . e . , QoS     for     class     1 , is     satisfied , given     φ } ( 3.13 ) ( 2 )  ( φ ) ·  = Δ  { K : ( 3.4 ) , i . e . , QoS     for     class     2 , is     satisfied , given     φ } ( 3.14 )

The admissible set/is defined thus:  ( φ ) L  = Δ  ( 1 )  ( φ ) ⋂ ( 2 )  ( φ ) = { K : ( 3.3 )     and     ( 3.4 ) ,     i . e . , QoS     for     classes     1     and     2     are     satisfied , given     φ } ( 3.15 )

Finally, the realizable set is defined thus: $\begin{matrix} {\Re \overset{\Delta}{=}{{\bigcup\limits_{\varphi}{(\varphi)}} = \left\{ {K:{\exists{{\varphi \quad {such}\quad {that}\quad K} \in {(\varphi)}}}} \right\}}} & (3.16) \end{matrix}$

We let the boundary of each of the above sets be denoted by ∂, so that ∂⁽¹⁾(φ) denotes the boundary of ⁽¹⁾(φ).

The following result gives a procedure for computing the realizable set .

Propositon 3

The boundary ∂ parameterized by K₂ is obtained by solving for K₁ and φ from Eq. (3.3) and Eq. (3.4) in which the outer inequalities are replaced by equalities.

The proof is simple and by contradiction. Suppose for fixed K₂, (K₁, φ) are obtained by the above procedure, and (K₁ ^(′),φ′) are such that the equality holds in Eq. (3.3) and the strict inequality holds in Eq. (3.4), and also K₁ ^(′)>K₁. By comparing the two expressions corresponding to Eq. (3.4) it may be inferred that φ′<φ. This ordering when used in the two equations corresponding to Eq. (3.3) immediately gives a contradiction. To complete the proof we need to also consider the possibility that (K₁ ^(′),φ′) are such that the strict inequality and equality hold in Eqs. (3.3) and (3.4), respectively. A contradiction by a similar argument follows.

3.5 Linear Approximations to the Admissible Sets

The boundaries of the admissible regions (φ) defined above are typically nonlinear. However, our experience has been that typically good approximations are provided by simplexes, i.e., regions with boundaries composed of linear segments. Our design methodology is based on linear approximations of the admissible regions. Such approximations are completely determined by a small number (2-4) of corner points. We let ^((j))φ be the linear approximation to ⁽¹⁾(φ)(j=1,2) and (φ) be the linear approximation to (φ). Also is the approximation to the realizable set obtained from the linear approximations to the admissible set. However, itself is not a simplex in general. In each of two cases to be described below, linear approximations to the realizable sets are also developed, but we defer further descriptions of these entities.

We construct the linear approximation ^((j))(φ) by making its corner points be equal to the corner points of ^((j))(φ), and then joining these points by linear segments. For instance, the boundaries of ⁽¹⁾(φ) and ⁽¹⁾(φ) have in common the corner points ({overscore (K)}₁ ⁽¹⁾, 0), (1, {overscore (K)}₂ ⁽¹⁾(φ)), and (0,∞). Similarly, the boundaries of ⁽²⁾(φ) and ⁽²⁾(φ) have points (0, {overscore (K)}₂ ⁽²⁾), ({overscore (K)}₁ ⁽²⁾(φ), 1), and (∞,0). Note that in the figures we do not attempt to represent (0,∞) and (∞,0). The boundary of ^((j))(φ), ∂^((j))(φ) is composed of two linear segments connecting the three aforementioned corner points, although only one segment in the figures. Finally,  ( φ ) = ( 1 )  ( φ ) ⋂ ( 2 )  ( φ ) ( 3.17 )

The approximation to the realizable set based on the linear approximations to the admissible sets is , where $\begin{matrix} {\Re_{\quad } = {{\bigcup\limits_{\varphi}{(\varphi)}} = \left\{ {K:{\exists{{\varphi \quad {such}\quad {that}\quad K} \in {(\varphi)}}}} \right\}}} & (3.18) \end{matrix}$

The reader may examine sketches of the linear approximations in FIG. 5.

3.6 Qualitative Discussion of the Influence of the Weights on the Admissible Set

When φ is large, i.e., the relative weight given to class 1 sources is large, an examination of Eq. (3.9) shows that {overscore (K)}₁ ⁽²⁾(φ) is small. That is, in the presence of a single active class 2 source and with the QoS of this source at issue, the number of admissible class 1 sources is small, somewhat paradoxically. Moreover, this quantity increases as φ decreases. See FIG. 5.

From the perspective of QoS for the class 2 source, the system is in effect hard-partitioned with only a small allocation of aggregate bandwidth to class 1 sources. That is, to satisfy this QoS, the unbalanced choice of weights has to be compensated by an oppositely unbalanced allocation of bandwidth. Hence, any expectation that very large relative weight given to class 1 sources will allow large numbers of admissible class 1 sources is thwarted by considerations of QoS for class 2.

When φ is large, decreasing φ, i.e., decreasing the relative weight given to class 1 sources, has the effect of increasing the number of admissible class 1 sources when there is an active single class 2 source. The explanation is contained in the above discussion. First observe in FIG. 5(a), that for φ large the boundary of the admissible region contains the points ({overscore (K)}₁ ⁽²⁾(φ), 1) and ({overscore (K)}₁ ⁽¹⁾,0), and also {overscore (K)}₁ ⁽²⁾(φ)<<{overscore (K)}₁ ⁽¹⁾. Hence the number of admissible class 1 sources in the presence of a single active class 2 source is {overscore (K)}₁ ⁽²⁾(φ). As is clear from Eq. (3.9) and the above discussion, {overscore (K)}₁ ⁽²⁾(φ) increases as φ decreases.

Note that in this case the misallocation of weights leads to a small number of class 1 sources benefitting by receiving QoS well in excess of requirements. Hence excessively large φ simultaneously inhibits sharing as well as misallocates resources.

We conclude by drawing attention to the feature in FIG. 5(a), which follows from the symmetrical implication on {overscore (K)}₂ ⁽¹⁾(φ) of the argument given above. From the perspective of QoS of a single class 1 source, the number of admissible class 2 sources is large, for large φ, see Eq. (3.8). The bandwidth partitioning is such that the aggregate allocation to class 2 is large. Hence {overscore (K)}₂ ⁽¹⁾(φ) is large, and the excess over {overscore (K)}₂ ⁽²⁾ which QoS for class 2 dictates, is a measure of the inefficiency due to misallocation of weights.

3.7 The “Effectively Homogeneous” Case

The justification for the above label will become apparent later and it will also become clear that this is a benign case from the design perspective. The case is depicted in FIGS. 5(c)-(e), and it arises if any of the following conditions hold.

Proposition 4

The following conditions are equivalent

(i) φ_(c) ⁽¹⁾≦φ_(c) ⁽²⁾  (3.19)

(ii) For some φ, {overscore (K)} ₁ ⁽²⁾(φ)={overscore (K)} ₁ ⁽¹⁾ and {overscore (K)} ₂ ⁽²⁾ ≦{overscore (K)} ₂ ⁽¹⁾(φ)  (3.20)

(iii) For some φ, {overscore (K)} ₂ ⁽¹⁾(φ)={overscore (K)} ₂ ⁽²⁾ and {overscore (K)} ₁ ⁽¹⁾ ≦{overscore (K)} ₁ ⁽²⁾(φ)  (3.21)

Proof: Note that in Eq. (3.20), φ=φ_(c) ⁽²⁾ and in Eq. (3.21), φ=φ_(c) ⁽¹⁾. This follows from Eq. (3.12). If Eq. (3.20) holds then {overscore (K)}₂ ⁽²⁾≦{overscore (K)}₂ ⁽¹⁾(φ_(c) ⁽²⁾), and since {overscore (K)}₂ ⁽¹⁾(φ) is monotonic, non-increasing with decreasing φ, as stated in Proposition 2, Eq. (3.19) follows. If Eq. (3.19) holds then from the above property of {overscore (K)}₂ ⁽¹⁾(φ) and the monotonic non-increasing behavior of {overscore (K)}₁ ⁽²⁾(φ) with increasing φ, Eq. (3.21) follows. By a similar argument, Eq. (3.20) follows from Eq. (3.21).

From the key monotonicity properties of {overscore (K)}₂ ⁽¹⁾(φ) and {overscore (K)}₁ ⁽²⁾(φ), which have been summarized in Proposition 2, the important fact follows that the linear approximation to the admissible set (φ) for φ<φ_(c) ⁽²⁾ is dominated by (φ_(c) ⁽²⁾). That is, as shown in FIGS. 5(a) and (c), $\begin{matrix} {{(\varphi)} \subseteq {{\left( \varphi_{c}^{(2)} \right)\quad {for}\quad {all}\quad \varphi} > \varphi_{c}^{(2)}}} & (3.22) \end{matrix}$

Similarly as shown in FIGS. 5(b) and (c), we have, $\begin{matrix} {{(\varphi)} \subseteq {{\left( \varphi_{c}^{(1)} \right)\quad {for}\quad {all}\quad \varphi} < \varphi_{c}^{(1)}}} & (3.23) \end{matrix}$

Hence we have,

Proposition 5

To maximize the linear approximation to the admissible set, it is disadvantageous to select φ outside the interval [φ_(c) ⁽¹⁾, φ_(c) ⁽²⁾] in the effectively homogeneous case.

Next observe that in this case, for all φ in the interval [φ_(c) ⁽¹⁾, φ_(c) ⁽²⁾], the boundaries of (φ) and (φ) have the important and desirable property of containing the extreme points ({overscore (K)}₁ ⁽¹⁾, 0) and (0, {overscore (K)}₂ ⁽²⁾). Now let _(H) denote the triangular region with the origin (0,0) and these extreme points as vertices. From the construction of (φ) for φε[φ_(c) ⁽¹⁾, φ_(c) ⁽²⁾] it should be clear that _(H) is a conservative, but generally close, approximation to the union of (φ). That is H ⊆ ⋃ φ ∈ [ φ c ( 1 ) , φ c ( 2 ) ]   ( φ ) ( 3.24 )

From Proposition 5 the right hand set is _(l). Hence, _(H) is a conservative approximation to _(l).

In summary, the set _(H) has the important property of containing the extreme points ({overscore (K)}₁ ⁽¹⁾, 0) and (0, {overscore (K)}₂ ⁽²⁾) and, since it is a triangle, it is simple, and also a conservative approximation to the realizable set in the effectively homogeneous case.

3.8 The “Effectively Non-Homogeneous” Case

This case arises when

φ_(c) ⁽²⁾≦φ_(c) ⁽¹⁾  (3.25)

The behavior of the admissible set for various values of φ in this case is depicted in FIGS. 5(f)-5(h). It follows from Proposition 4 that in this case,

{overscore (K)} ₁ ⁽²⁾(φ)={overscore (K)} ₁ ⁽¹⁾ →{overscore (K)} ₂ ⁽²⁾ >{overscore (K)} ₂ ⁽¹⁾(φ)  (3.26)

and

{overscore (K)} ₂ ⁽¹⁾(φ)={overscore (K)} ₂ ⁽²⁾ →{overscore (K)} ₁ ⁽¹⁾ >{overscore (K)} ₁ ⁽²⁾(φ)  (3.27)

One implication of these observations is that, unlike the effectively homogeneous case, the triangular region _(H) cannot be realized by any fixed φ and, also, not even by a range of φ. This is a handicap which is addressed later when design procedures are considered.

Observe a similarity with the effectively homogeneous case in that it is also disadvantageous here to select φ outside the interval [φ_(c) ⁽²⁾, φ_(c) ⁽¹⁾]. This is because $\begin{matrix} {{\quad (\varphi)} \subseteq {{\left( \varphi_{c}^{(1)} \right)\quad {for}\quad {all}\quad \varphi} > \varphi_{c}^{(1)}}} & (3.28) \\ {and} & \quad \\ {{(\varphi)} \subseteq {{\left( \varphi_{c}^{(2)} \right)\quad {for}\quad {all}\quad \varphi} > \varphi_{c}^{(2)}}} & (3.29) \end{matrix}$

from the monotonicity properties in Proposition 2.

Next, we give for the benefit of the reader the corner points of the simplex (φ) for φε[φ_(c) ⁽²⁾, φ_(c) ⁽¹⁾]. See FIG. 5(g) for a sketch. These points are, (0, {overscore (K)}₂ ⁽²⁾), (1, {overscore (K)}₂ ⁽¹⁾(φ)), ({overscore (K)}₁ ⁽²⁾(φ), 1) and ({overscore (K)}₁ ⁽¹⁾,0). At the two extreme points of the interval for φ, i.e. at φ=φ_(c) ⁽²⁾ and φ=φ_(c) ⁽¹⁾, the above four corner points reduce to three.

We define now a set _(NH) which plays a role in the effectively non-homogeneous case comparable to _(H) in the effectively homogeneous case. NH  = Δ   ( φ c ( 1 ) ) ⋃  ( φ c ( 2 ) ) ( 3.30 )

In FIG. 6, this region is the simplex with corner points 0, A₂, C and A₁. Note that _(NH) is a conservative approximation to the realizable set _(l), i.e., _(NH) _(l). An intuitive appreciation of the difference between _(NH) and _(l) may be obtained by superimposing on FIG. 6 the locus of points X(φ), φ_(c) ⁽²⁾≦φ≦φ_(c) ⁽¹⁾, where X(φ), shown in FIG. 5(g), is the point of intersection of ∂⁽¹⁾(φ) and ∂⁽²⁾(φ).

3.9 Proposed Design Procedures

The goal of the design procedures which we propose is to realize, by simple techniques for selecting φ, the set _(H) in the effectively homogeneous case and the set _(NH) in the effectively non-homogeneous case. These sets are approximations to the realizable set . Our experience has been that _(H) more closely approximates the realizable set than _(NH). However even in the latter case the gap between and _(NH) is necessarily small and restricted to the interior since the extremal corner points ({overscore (K)}₁ ⁽¹⁾, 0) and (0, {overscore (K)}₂ ⁽²⁾) are common to both sets.

In the effectively homogeneous case the design procedure is straightforward since any fixed φ in the interval [φ_(c) ⁽¹⁾, φ_(c) ⁽²⁾] will give _(H) as its admissible set. A refinement to this procedure is to select φ=(φ_(c) ⁽¹⁾+φ_(c) ⁽²⁾)/2, which, because of the convexity of (φ), see FIG. 5(d), will yield an admissible set that dominates _(H) and captures most of the gap between _(H) and .

Clearly the design procedure is more complicated for the effectively non-homogeneous case since no single φ will realize all of _(NH). Our procedure in this case is to realize _(NH) with only two values of φ, namely, φ_(c) ⁽¹⁾ and φ_(c) ⁽²⁾. Say the desired operating point (K₁, K₂) is in the simplex in FIG. 6 with corner points 0, A₂, B₂, and A₁, which we denote by S(0, A₂, B₁, A₁). In this case we use φ=φ_(c) ⁽²⁾. Now suppose that the desired operating point moves into the triangular region S(A₂,B₁,C). We propose switching φ to φ_(c) ⁽¹⁾. Alternatively we may realize S(0,A₁,B₂,A₂) by φ=φ_(c) ⁽¹⁾ and realize the complementary S(A₁,B₂,C) by φ=φ_(c) ⁽²⁾

Besides the fact that two, rather than one, weights are required in the design procedure to handle the non-homogeneity, another difference is that the bulk of the gap between and _(NH) cannot be captured by any simple strategy, i.e., a large number of values of φ with correspondingly large number of switching of weights is necessary. This is impractical, and, moreover, as has been observed above, not worth the effort since the gap cannot be substantial.

4. Numerical Results

The investigations reported in this section numerically illustrate the mathematical results of prior sections on statistical multiplexing, GPS design and call admission control. Specifically, the set of figures address the following issues: (i) the advantage of exploiting statistical multiplexing in GPS design in terms of capacity gain and comparison with traditional designs which are based on deterministic QoS guarantees; (ii) the admissible region as a function of GPS weights; (iii) optimum design of weights and the realizable admissible region; (iv) application to voice and data support.

In each of the three cases we consider there are two QoS source classes sharing a total bandwidth of 45 Mbps (this is the link bandwidth minus the bandwidth allocated to the best effort traffic). Table 4.1 gives the dual leaky bucket and QoS parameters associated with each class in each case, as well as the lossless effective bandwidth e_(o) ^((.)).

TABLE 4.1 Traffic and QoS parameters for the three cases in FIGS. 7, 8 and 9 Case 1 Case 2 Case 3 Class 1 Class 2 Class 1 Class 2 Class 1 Class 2 Q (cells) 250 250 25 250 100 1000 P (Mbps) 1.5 1.5 1.5 1.5 0.032 1.5 r (Mbps) 0.15 0.15 0.15 0.15 0.016 0.15 L 10⁻³ 10⁻⁹ 10⁻³ 10⁻⁹ 10⁻³ 10⁻⁹ D (sec) 0.001 0.6 0.01 0.01 0.01 0.6 e_(o) ^((·)) (Mbps) 1.48 0.158 0.62 1.31 0.0318 0.48

Case 1 is considered in FIG. 7, where the two QoS classes have the same dual leaky bucket parameters, but different maximum delay D and maximum violation, i.e., loss, probability L. The two critical (ratios of) weights φ_(c) ⁽¹⁾ and φ_(c) ⁽²⁾ in this case are found to be 6.4 and 9.2. The boundaries of the admissible regions obtained using these values are plotted. Note that these two source classes are effectively non-homogeneous, i.e., no single weight is sufficient for all traffic mixes. The boundary of the realizable region, which is obtained by varying φ, the ratio of weights, between its two critical values, is also plotted. As in Section 3.9, we observe that the realizable region may be approximately achieved by using only the two critical weights and switching between them on a slow time scale as the desired operating point in connections changes in correspondence to changes in traffic mix. Observe in Table 4.1 that e_(o) ^((.)) is close to the peak rate for class 1 and to the mean rate for class 2. Also observe that, not surprisingly, the gain in capacity from statistical multiplexing is more pronounced for class 1.

The results for Case 2 are shown in FIG. 8, where the sources differ in their dual leaky bucket parameters and QoS requirements. We determine the critical weights to be 0.372 and 0.307, and find that the two corresponding admissible regions are equivalent, which implies that the two classes are effectively homogeneous. The realizable region in this case is, as expected, only slightly larger than that obtained with either fixed critical weight. We also plot the admissible region for the case of deterministic QoS guarantees, i.e., with L_(j)=0 (j=1, 2) and all other parameters unchanged. The advantage of statistical multiplexing is clearly demonstrated in this figure; there is a factor of 3 in multiplexing gain.

FIG. 9 shows the results for Case 3 where we consider the support of real time and non-real time traffic classes. Class 1 is voice coded at 32 Kb/s and employing silence-detection; its dual leaky bucket parameters are appropriately chosen, and its nodal maximum delay is 10 msec. Class 2 models LAN traffic on a T1 link, which is delay-tolerant but has stringent loss requirement. The critical weights are 0.0527 and 0.0628. Note that the two classes, while quite different in their dual leaky bucket and QoS parameters, are almost effectively homogeneous, i.e., any one of the critical weights provides almost all of the realizable region.

5. End-to-end Heterogeneous Statistical QoS Guarantees with GPS Service

In this section, we consider the problem of supporting two QoS service classes and a best-effort class in a network-wide setting. Our solution approach is based on results from the single node analysis and the following two ideas: (i) The best-effort class is allocated part of the resources in each node for its exclusive use. The best-effort traffic typically consumes these resources; the unused resources, if any, may be too highly variable to be of use for the QoS classes. (ii) The output of each QoS source queue in each node is regulated, where the peak rate is not allowed to exceed a certain value—this value is not necessarily equal to the peak input rate; in fact it is typically smaller to account for the buffering and multiplexing at the node. In our work we limit the peak output rate to e_(o), which is the lossless effective bandwidth defined in Eq. (2.7). The incorporation of output regulation in GPS is a novel feature, and the motivation behind it is twofold. First, since the admitted QoS sources are allocated resources to meet their contractual requirements, there is no need to allow them access to more resources; excess resources are made available to the best-effort class. Second, output regulation leads to a manageable and more accurate end-to-end resource management, since the output of each queue, which is the input to the queue in the next node, can be tightly characterized. As a consequence, in output regulated GPS our prior single node analysis applies to all nodes in the network. The total bandwidth available to best-effort traffic is a to function of the number of admitted QoS sources and the activity of each source; it will be characterized in more detail below.

We now outline a scheme for analyzing end-to-end resource management of virtual connections, which are either originating at the node or transit (recall that in prior sections we used the term sources to describe all connections.) The bandwidth demand of each connection on each node is characterized by an appropriate pair (r, e_(o)), where r is the bound on the mean flow rate and e_(o) is defined in Eq. (2.7). Thus, the single node CAC and GPS designs of Sections 2 and 3 apply. We assume that the end-to-end QoS requirement for class j is specified by (D_(j) ^(T), L_(j) ^(T)), where

Pr((Total_delay)_(j) >D _(j) ^(T) ≦L _(j) ^(T) j=1,2

and (Total_delay)_(j) is the maximum end-to-end delay. As before, each node implements output regulated GPS and buffering per connection. In each node, each originating connection of class j is characterized by the dual leaky bucket parameters (r^((j)),Q^((j)),P^((j))).

Let (Delay)_(ji) denote the maximum delay for class j at node i, so that $\begin{matrix} {{{\sum\limits_{i}\quad ({Delay})_{ji}} = ({Total\_ delay})_{j}},\left( {{j = 1},2} \right),{{{{and}\quad {let}\quad {the}\quad {QoS}\quad {requirement}\quad {for}\quad {class}\quad j\quad {at}\quad {node}\quad i\quad {{be}.{\Pr \left( {({Delay})_{ji} > D_{ji}} \right)}}} \leq {L_{j}\quad j}} = 1},{2;{i = 1}},{\ldots \quad N}} & (5.1) \end{matrix}$

where D_(ji) is the maximum allocated delay for class j at node i. For instance, L_(j) may be set equal to L_(j) ^(T)/N_(j), where N_(j) is the maximum number of hops of all connections of class j. For typical applications where L_(j) ^(T) is small and N_(j) is not large this approximation is conservative but reasonable.

We first consider the case where the entire delay budget for each class is allocated to the first node in the path of the connection, i.e., D_(j1)=D_(j) ^(T) and D_(ji)=0 for i>1. The motivation behind this is that buffering at the network edges may be cheaper and the traffic smoothing thus obtained alleviates congestion at intermediate and potential bottleneck nodes. In this case, specifically on account of output regulated GPS, the CAC and GPS design in the edge and all intermediate nodes are identical, since the demand of all connections of class j is described by a common (r^((j)), e_(o) ^((j))). Note that the actual mean rate of the traffic at an intermediate node may be less than r^((j)) due to possible loss at the node; however, the probability of loss due to full buffer is, by design, very small.

Next, consider the case of the general allocation of the end-to-end delay budget among the nodes in the path of the connection. In this case, the CAC, GPS design and the value of the output rate are obtained from the prior single node analysis as if the incoming transit traffic is regulated by a dual leaky bucket with parameters (r^((.)), D_(on) ^((.))e_(o) ^((.)), e_(o) ^((.))), where e_(o) ^((.)) is the peak output rate from the preceding (upstream) node, which together with D_(on) ^((.)), is obtained from the (lossless multiplexing) analysis of that node. Note that a consequence of the general allocation in the delay budget is a proliferation of classes, leading to considerable computational complexity, even though the solution framework remains unchanged. An alternative view is that the combination of edge-only buffering and the approximation of uniform losses across nodes in each class has the virtue of containing the explosion in complexity.

One alternative to allocating all of the delay to the first node is to make an equal allocation of delay to all nodes in the end-to-end path. This would be acceptable, for example, in a network that is at least approximately homogeneous. Another alternative is to allocate delay to each node in the path in inverse relationship to the link speed or port speed associated with that node. In fact, the pertinent speed for that purpose could be a combination of the port speed and the utilization factor (i.e., the fraction of total capacity being used) of that node.

Those skilled in the art will appreciate that for each proposed end-to-end path, weights need to be designed not only for the first, or edge, node, but also for each intermediate, or interior, node along the path. Significantly, the peak-rate regulation that we have described here makes it possible to impute a three-parameter leaky bucket characterization to the traffic incident upon each interior node, as well as to the edge node. As a consequence, the same design techniques prescribed here for an edge node are also advantageously employed at interior nodes.

As discussed above, the end-to-end path must satisfy quality-of-service (QoS) restrictions on delay as well as other possible performance measures such as loss probability. (Strictly speaking, the delay restriction is a restriction on the probability that delay will exceed a prescribed limit, as discussed above.) We have discussed, above, various ways to allocate the end-to-end delay budget over the nodes in a proposed path. (Similar procedures can be used to allocate the end-to-end loss probability.) In accordance with allocations of that kind, end-to-end QoS requirements are decomposed into local sets of QoS requirements, each such set applying to a particular node along the path. Significantly, the design procedure is carried out at each interior node in such a way that the pertinent local set of QoS requirements is satisfied.

Those skilled in the art will also appreciate that admission to a proposed path will fail if there are inadequate resources at any point along the path. Thus, in particular, each interior node along the path must be able to accept a proposed connection without violating the QoS requirements of all existing connections; that is, without exiting its respective realizable set. We can speak of an end-to-end realizable set, which consists of the intersection, over the entire proposed path, of the realizable sets of all the included nodes. One aspect of admission control is then to determine whether, upon acceptance of a proposed connection, the network will remain within its end-to-end realizable set.

It is advantageous for admission control to be carried out at the edge node which is the first node of the proposed path. Thus, in one illustrative scenario, the entity that administers admission control checks each node, in succession, along the end-to-end path. If the proposed connection lies within the realizable region for each and every one of the nodes along the path, the administrative entity so informs the edge node, and the connection may be established. If, on the other hand, this test fails for at least one such node, the edge node is so informed, and admission is denied, or an alternate end-to-end path is proposed.

5.1 Characterization of the Best-Effort Channel

As pointed out above, for each node in the network, the bandwidth available to the best-effort traffic consists of a fixed provisioned component and a variable component which is a function of the carried QoS traffic. The variable bandwidth component has large fluctuations at the time-scale of QoS connections, i.e., the time-scale of connection arrivals and departures, and small superimposed fluctuations at the burst time-scale, i.e. the time-scale of on-off dynamics of the admitted connections. The bandwidth available to the best effort traffic, C_(be) may be characterized by a modulated Brownian motion. The modulating process captures the slow-time scale component and models the number of admitted calls of each QoS source type and their dynamics (arrivals and departures.) For a given state of the modulating process K=(K₁, K_(2, . . .) ), where K_(j) is the number of admitted connections of QoS class j, the Brownian motion captures the fast time-scale component. Specifically, the mean and the variance of C_(be)(K) are given as: $\begin{matrix} {{{Mean}\quad \left( {C_{be}(K)} \right)} = {C - {\sum\limits_{j}{K_{j}r^{(j)}}}}} & (5.2) \end{matrix}$

where C is the nodal bandwidth, and $\begin{matrix} {{{Var}{\quad \quad}\left( {C_{be}(K)} \right)} = {\sum\limits_{j}{{K_{j}\left( e_{o}^{(j)} \right)}^{2}{\omega^{(j)}\left( {1 - \omega^{(j)}} \right)}}}} & (5.3) \end{matrix}$

Recall that r^((j))=e_(o) ^((j))ω^((j)). In the simplest connection model, arrivals are Poisson and holding periods are exponentially distributed, with rates which may depend on the class. For such models, the modulating connection process has a steady state distribution which is product-form and easily computed. We remark that the modulated Brownian motion characterization of the best-effort channel is appropriate to the general expectations of relatively higher loss, which justifies the diffusion, rather than the large deviations asymptotic, regime. Techniques for analysis of such modulated Brownian motion may be found in R. L. Karandikar and V. G. Kulkarni, “Second order fluid flow models: reflected Brownian motion in a random environment”, Opns. Res. 45, 1995, pp. 77-88 and S. Assmussen, “Stationary distribution for fluid flow models with or without Brownian motion”, Stochastic Models 11, 1995, pp. 21-49.

6. Conclusions

In this invention, we have considered the analysis and design of GPS schedulers under statistical QoS guarantees. While the basic results are for a single node, the general setting considered is that of a network of GPS schedulers supporting two QoS classes and a best effort class. The connections are regulated by dual leaky buckets and the output of each connection buffer is peak rate-controlled. The latter feature makes the bandwidth in excess of what is need to satisfy the demand of the QoS sources available to the best effort traffic; it also facilitates the end-to-end analysis since the output of each connection queue can be tightly characterized. We have derived the realizable admissible connection region, which is the largest possible admissible region obtained by varying the weights. We have derived the notion of critical weights, and shown that the realizable region can be found by varying the weights only between the two critical weights. We have shown further that the realizable region can be closely approximated by using one of the critical weights, or by switching between the two only once as the operating point shifts due to changes in the traffic mix. For the best effort traffic we have developed a characterization of its share of the link bandwidth which should be useful in its analysis and engineering. The validity of our overall analytical and design results as well as the considerable advantage of using statistical QoS guarantees over deterministic guarantees has been demonstrated by numerical examples.

This work can be extended in a number of interesting directions. The analysis may be extended to the general case of more than two source classes. Multiplicity of source classes in our framework arises not only from multiplicity of QoS requirements, but also from the existence of multiple traffic classes (defined by different dual leaky bucket parameters). Algorithms could be devised which systematically derive the realizable region and the critical weights, based on extensions of the results for the two-class case.

Another possible extension is to hierarchical GPS schedulers. These schedulers are attractive since they provide isolation between classes and flexibility in bandwidth allocation. It is also of interest to develop hierarchical analysis of such schedulers, and which may be used as an approximation the analysis of to the non-hierarchical schedulers.

Another issue which is worth investigating further is how the results are influenced by the coexistence of “statistically multiplexable” and “non-statistically multiplexable” sources, as defined in A. I. Elwalid, D. Mitra and R. H. Wentworth, “A new approach for allocating buffers and bandwidth to heterogeneous, regulated traffic in an ATM node”, IEEE J. Select. Areas Commun. 13:(6), 1995, pp. 1115-127, and in particular, how the linearity of the admissible region is affected.

Many more variations of the preferred embodiment of the invention are possible without departing from the spirit, the essential criteria and the rules and methods of this invention. The proper scope of this invention is indicated by the appended claims, rather than by the foregoing description and all variations which come within the meaning and range of equivalency of the claims are therefore intended to be covered by the claims stated hereinafter. 

We claim:
 1. A method for Generalized Processor Sharing (GPS) scheduling and network control, wherein j (j=1, 2) classes of connections are presented to a GPS scheduler at a node with a total link bandwidth C, each class j comprising K_(j) connections and characterized by a quality of service (QoS) loss probability L_(j), and a lossless multiplexing bandwidth e_(oj), each connection having an associated buffer and allocated a weight φ_(j) that determines the connection's share of bandwidth, the method comprising: computing the number of connections K₁ in a first class of connections and the weight φ₁ associated with each connection in the first class of connections; and computing the number of connections K₂ in a second class of connections and the weight φ₂ associated with each connection in the second class of connections, such that the following expressions are satisfied: ${\Pr \left\lbrack {{\varphi_{1}{\sum\limits_{i = 1}^{K_{1} - 1}\quad \xi_{i}^{(1)}}} + {\varphi_{2}{\sum\limits_{i = 1}^{K_{2}}\quad \xi_{i}^{(2)}}}} \right\rbrack} > {\varphi_{1}\left( {{C/e_{o}^{(1)}} - 1} \right)} \leq L_{1}$ ${\Pr \left\lbrack {{\varphi_{1}{\sum\limits_{i = 1}^{K_{1}}\quad \xi_{i}^{(1)}}} + {\varphi_{2}{\sum\limits_{i = 1}^{K_{2} - 1}\quad \xi_{i}^{(2)}}}} \right\rbrack} > {\varphi_{2}\left( {{C/e_{o}^{(2)}} - 1} \right)} \leq L_{2}$

 Pr(ξ_(i) ^((j))=1)=1−Pr(ξ_(i) ^((j))=0)=ω_(i) ^((j)) wherein ξ_(i) ^((j)) is the activity indicators for the i^(th) connection of class j that takes the value 1 if the connection is active and 0 otherwise, and ω_(i) ^((j)) is the fraction of time that the corresponding buffer and bandwidth is utilized for the i^(th) connection of class j.
 2. The method of claim 1 further comprising the step of determining pinned corner points {overscore (K)}₁ ⁽¹⁾ and {overscore (K)}₂ ⁽²⁾ for the first and second classes of connections respectively, such that the following expressions are satisfied: ${\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{1}^{(1)} - 1}\quad \xi_{i}^{(1)}} > \left( {{C/e_{o}^{(1)}} - 1} \right)} \right\rbrack} \lesssim L_{1}$ ${\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{2}^{(2)} - 1}\quad \xi_{i}^{(1)}} > \left( {{C/e_{o}^{(2)}} - 1} \right)} \right\rbrack} \lesssim L_{2}$

wherein {overscore (K)}₁ ⁽¹⁾ and {overscore (K)}₂ ⁽²⁾ are the maximum number of connections of class 1 and class 2, respectively, that satisfy its QoS when there are no connections of the complementary class.
 3. The method of claim 2 further comprising the step of determining design corner points {overscore (K)}₁ ⁽²⁾(φ) and {overscore (K)}₂ ⁽¹⁾(φ) for the first and second classes of connections respectively, such that the following expressions are satisfied: ${\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{2}^{(1)}{(\varphi)}}\quad \xi_{i}^{(2)}} > {\varphi \quad \left( {{C/e_{o}^{(1)}} - 1} \right)}} \right\rbrack} \lesssim L_{1}$ ${\Pr \left\lbrack {{\sum\limits_{i = 1}^{{\overset{\_}{K}}_{1}^{(2)}{(\varphi)}}\quad \xi_{i}^{(1)}} > {\frac{1}{\varphi}\left( {{C/e_{o}^{(2)}} - 1} \right)}} \right\rbrack} \lesssim L_{2}$

wherein {overscore (K)}₁ ⁽¹⁾(φ) and {overscore (K)}₂ ⁽²⁾(φ) and are the maximum number of connections of class 1 and class 2, respectively, that while active for a fixed φ receives resources to satisfy its QoS.
 4. The method of claim 3 further comprising the step of determining the critical weights φ_(c) ⁽¹⁾ and φ_(c) ⁽²⁾ for the first and second classes of connections respectively, such that the following expressions are satisfied: {overscore (K)} ₂ ⁽¹⁾(φ_(c) ⁽¹⁾)={overscore (K)} ₂ ⁽²⁾ {overscore (K)} ₁ ⁽²⁾(φ_(c) ⁽²⁾)={overscore (K)} ₁ ⁽¹⁾ wherein φ_(c) ⁽¹⁾ and φ_(c) ⁽²⁾ are those values for class 1 and class 2 connections, respectively, for which QoS is satisfied when the number of connections of complementary class j_(c) is {overscore (K)}_(jc) ^((jc)), and there is only one connection of class 1 and class 2, respectively.
 5. The method of claim 4 further comprising the step of defining a boundary of realizable admissible weights for the GPS scheduler using a single critical weight when the following expression is satisfied: φ_(c) ⁽¹⁾≦φ_(c) ⁽²⁾.
 6. The method of claim 4 further comprising the step of defining a boundary of realizable admissible weights for the GPS scheduler using two critical weights when the following expression is satisfied: φ_(c) ⁽²⁾≦φ_(c) ⁽¹⁾.
 7. The method of claim 6 further comprising the step of specifying a third class of connections referred to as a best effort class of connections.
 8. The method of claim 7 further comprising the step of maximizing the bandwidth available to the best effort class of connection by minimally satisfying the quality of service (QoS) loss probabilities L₁ and L₂ for the first and second classes of connections.
 9. The method of claim 1 wherein the lossless multiplexing bandwidth e_(o) for each class of connections is dependent on the dual leaky bucket regulator parameters for that class of connections.
 10. The method of claim 1 wherein the quality of service (QoS) for each class of connections is further specified by a delay D.
 11. The method of claim 10 wherein the quality of service (QoS) loss probability L and delay D for each class of connections is specified by the user.
 12. The method of claim 11 wherein the first class of connections has higher quality of service (QoS) parameters compared to QoS parameters for the second class of connections.
 13. The method of claim 8 further comprising the step of setting peak transmission bandwidths for the first and second classes of connections to be equal to the lossless multiplexing bandwidth for that particular class of connection.
 14. A method for Generalized Processor Sharing (GPS) scheduling and network control with QoS guarantees, wherein at least two classes of connections are presented to a GPS scheduler at a node, the method comprising: computing pinned corner points for a first class of connections and a second class of connections; computing design corner points for the first and second classes of connections; computing critical weights for the first and second classes of connections based on the pinned and design corner points for each class of connection; and defining a boundary of realizable admissible weights for the GPS scheduler based on the critical weight for each class of connection.
 15. The method of claim 14 further comprising the step of specifying a third class of connections referred to as a best effort class of connections.
 16. The method of claim 15 further comprising the step of maximizing the bandwidth available to the best effort class of connection by minimally satisfying quality of service (QoS) requirements for the first and second classes of connections.
 17. The method of claim 14 further comprising the step of specifying a lossless multiplexing bandwidth for each class of connections that is dependent on the dual leaky bucket regulator parameters for that class of connections.
 18. The method of claim 14 further comprising the step of specifying by the user quality of service (QoS) parameters for each class of connections.
 19. The method of claim 18 wherein the first class of connections has higher quality of service (QoS) parameters compared to QoS parameters for the second class of connections.
 20. The method of claim 16 further comprising the step of setting peak transmission bandwidths for the first and second classes of connections to be equal to a lossless multiplexing bandwidth for that particular class of connection.
 21. A method for Generalized Processor Sharing (GPS) scheduling and network control with QoS guarantees, wherein at least two classes of connections are presented to a GPS scheduler at a node, the method comprising: computing pinned corner points for a first class of connections and a second class of connections; computing design corner points for the first and second classes of connections; computing critical weights for the first and second classes of connections based on the pinned and design corner points for each class of connection; defining a boundary of realizable admissible weights for the GPS scheduler based on the critical weight for each class of connection; specifying a third class of connections as a best effort class of connections; setting peak transmission bandwidths for the first and second classes of connections to be equal to a lossless multiplexing bandwidth for that particular class of connection; and maximizing the bandwidth available to the best effort class of connection by minimally satisfying quality of service (QoS) requirements for the first and second classes of connections.
 22. The method of claim 21 further comprising the step of specifying the lossless multiplexing bandwidth for each class of connections based upon the dual leaky bucket regulator parameters for that class of connections.
 23. The method of claim 21 further comprising the step of specifying by the user the quality of service (QoS) parameters for each class of connections.
 24. The method of claim 21 wherein the first class of connections has higher quality of service (QoS) parameters compared to QoS parameters for the second class of connections. 